package com.net.xpay.core.domain.auto;

import com.net.common.domain.VersionedDomain;
import com.net.xpay.core.enums.AutoPayBatchStatus;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Getter
@Setter
@NoArgsConstructor
public class AutoPayBatch extends VersionedDomain {

    @ApiModelProperty(notes = "用户id")
    private Long userId;

    @ApiModelProperty(notes = "合伙人id")
    private Long partnerId;

    @ApiModelProperty(notes = "父级合伙人id")
    private Long fatherPartnerId;

    @ApiModelProperty(notes = "状态")
    private AutoPayBatchStatus status;

    @ApiModelProperty(notes = "导入的商户的批次号 非必选")
    private String importBatchNo;

    @ApiModelProperty(notes = "上传的文件保存链接")
    private String fileUrl;

    @ApiModelProperty(notes = "文件过期时间")
    private LocalDateTime fileExpired;

    @ApiModelProperty(notes = "批次总金额，单位为元，精确到小数点后两位，取值范围[0.01,9999999999999.99]  必选")
    private BigDecimal totalTransAmount;

    @ApiModelProperty(notes = "批次总笔数 10 必选")
    private Long totalCount;

    @ApiModelProperty(notes = "非必选")
    private String remark;

    public static AutoPayBatch getInstance() {
        return new AutoPayBatch();
    }
}
